package com.tiancheng.trade.order.vo.parallel.res;

import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

/**
 * 订单预支付返回结果数据
 *
 * @author kellen
 * @date 2024/3/17
 */
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
public class OrderPrePayParallelResVO {

    // 订单列表
    private List<Order> orders = new ArrayList<>();
    // 预支付信息
    private String payInfo;
    // 支付渠道
    private String payChannel;
    // 支付方式
    private String payWay;
    // 微信公众号/小程序支付时用户标识
    private String openid;
    // 订单名称
    private String orderName;
    // 支付金额
    private BigDecimal payAmount;
    // 支付过期时间（秒）
    private long payLeftTime;
    // 优惠券金额
    private BigDecimal discount;
    // 订单金额
    private BigDecimal orderAmount;
    // 业务场景
    private String type;
    // 是否合单支付
    private int isMergeOrder;
    // 订单号（合单支付时，没有）
    private String orderId;
    // 交通（租车）交易信息
    private Object trafficInfo;

    @Getter
    @Setter
    @AllArgsConstructor
    @NoArgsConstructor
    public static class Order {

        private String orderId;
        private String orderName;
        private BigDecimal orderAmount;
        private BigDecimal payAmount;
    }
}
